Data preparation

First, we create a dataset containing element network information joined with other attributes of elements. We specifically only consider elements that are known to form at least five minerals on Earth since 4.33 Ga. The following elements are therefore excluded (in parentheses is given the number of minerals it forms): Dy (1), Er (1), Gd (1), Hf (1), Sm (1), Re (2), Rb (3).

## # A tibble: 66 × 16
##    element n_elements n_minerals n_localities element_name element_hsab
##    <chr>        <dbl>      <dbl>        <dbl> <chr>        <chr>       
##  1 Ag              28        172         3166 Silver       Soft acid   
##  2 Al              52        881        10322 Aluminum     Hard acid   
##  3 As              59        634         4664 Arsenic      Hard acid   
##  4 Au              12         31         5616 Gold         Soft acid   
##  5 B               42        232         1295 Boron        Soft acid   
##  6 Ba              40        218         2904 Barium       Hard acid   
##  7 Be              36        121         1352 Beryllium    Hard acid   
##  8 Bi              40        212         1821 Bismuth      Int. acid   
##  9 Br              15         13           88 Bromine      Soft base   
## 10 C               50        417         9650 Carbon       Soft base   
## # … with 56 more rows, and 10 more variables: atomic_mass <dbl>,
## #   number_of_protons <dbl>, element_table_period <dbl>,
## #   element_table_group <dbl>, atomic_radius <dbl>, pauling <dbl>,
## #   element_metal_type <chr>, element_density <dbl>,
## #   element_specific_heat <dbl>, element_crust_percent_weight <dbl>

Analysis 1: What is the relationship between number of elements interacted with and number of minerals formed? This analysis asks if number of elements can explain number of minerals.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with log y and untransformed x, whose diagnostics best meet assumptions.



The resulting model is as follows - THERE IS A POSITIVE RELATIONSHIP.

Analysis 2: What is the relationship between number of elements interacted with and number of localities it is found at? This analysis asks if number of elements can explain number of localities.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with log y and untransformed x, whose diagnostics best meet assumptions.



The resulting model is as follows - THERE IS A POSITIVE RELATIONSHIP.

Analysis 3: What is the relationship between number of elements interacted with and percentage of crust? This analysis asks if element crust percentage by weight can explain the number of elements.

Note that there are six elements which do not appear in this analysis because they are missing crust data - C, H, N, REE (rare earth elements), Rh, Te.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with log x and untransformed y, whose diagnostics best meet assumptions.




The resulting model is as follows - THERE IS A POSITIVE RELATIONSHIP.

Analysis 4: What is the relationship between number of elements interacted with and electronegativity? This analysis asks if the number of elements can explain the electronegativity.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with both untransformed y and x, whose diagnostics best meet assumptions.




The resulting model is as follows - THERE IS NO RELATIONSHIP.:

Analysis 5: What is the relationship between number of minerals formed and electronegativity? This analysis asks if the number of minerals can explain electronegativity.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with log y and untransformed x, whose diagnostics best meet assumptions.




The resulting model is as follows - THERE IS NO RELATIONSHIP.

Analysis 6: What is the relationship between atomic number (number of protons) and the number of elements interacted with? This analysis asks if the atomic number (number of protons) can explain the number of elements interacted with.


First, we explore whether we should likely transform an axis on a log-scale. Model diagnostics are shown below for the model with both axes untransformed; all diagnostics are about the same, so we’ll use the regular data.




The resulting model is as follows - THERE IS A NEGATIVE RELATIONSHIP.



Figure export

Here we export figures to PDF files for use in manuscript.

Manuscript Figure 1

Figure 1 is two panels comprised of model1_plot and model2_plot.

Figure 2 is two panels comprised of model3_plot and model6_plot.

Session Info

The following shows the R version and package versions loaded for this analysis to enable reproducibility.

## R version 4.1.2 (2021-11-01)
## Platform: x86_64-apple-darwin17.0 (64-bit)
## Running under: macOS Big Sur 10.16
## 
## Matrix products: default
## BLAS:   /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRblas.0.dylib
## LAPACK: /Library/Frameworks/R.framework/Versions/4.1/Resources/lib/libRlapack.dylib
## 
## locale:
## [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
##  [1] cowplot_1.1.1     ggrepel_0.9.1     ggtext_0.1.1      performance_0.8.0
##  [5] broom_0.7.12      dragon_1.2.0      forcats_0.5.1     stringr_1.4.0    
##  [9] dplyr_1.0.8       purrr_0.3.4       readr_2.1.2       tidyr_1.2.0      
## [13] tibble_3.1.6      ggplot2_3.3.5     tidyverse_1.3.1  
## 
## loaded via a namespace (and not attached):
##  [1] colorspace_2.0-3     ellipsis_0.3.2       rprojroot_2.0.2     
##  [4] markdown_1.1         fs_1.5.2             gridtext_0.1.4      
##  [7] rstudioapi_0.13      roxygen2_7.1.2       farver_2.1.0        
## [10] remotes_2.4.2        golem_0.3.1          fansi_1.0.2         
## [13] lubridate_1.8.0      xml2_1.3.3           splines_4.1.2       
## [16] knitr_1.37           config_0.3.1         pkgload_1.2.4       
## [19] jsonlite_1.8.0       dbplyr_2.1.1         shinydashboard_0.7.2
## [22] shiny_1.7.1          compiler_4.1.2       httr_1.4.2          
## [25] backports_1.4.1      assertthat_0.2.1     Matrix_1.4-0        
## [28] fastmap_1.1.0        cli_3.2.0            later_1.3.0         
## [31] htmltools_0.5.2      prettyunits_1.1.1    tools_4.1.2         
## [34] igraph_1.2.11        gtable_0.3.0         glue_1.6.2          
## [37] Rcpp_1.0.8           cellranger_1.1.0     jquerylib_0.1.4     
## [40] vctrs_0.3.8          nlme_3.1-155         insight_0.16.0      
## [43] xfun_0.29            ps_1.6.0             brio_1.1.3          
## [46] testthat_3.1.2       rvest_1.0.2          mime_0.12           
## [49] lifecycle_1.0.1      scales_1.1.1         ragg_1.2.2          
## [52] hms_1.1.1            promises_1.2.0.1     yaml_2.3.5          
## [55] see_0.6.9            sass_0.4.0           stringi_1.7.6       
## [58] highr_0.9            bayestestR_0.11.5    desc_1.4.0          
## [61] pkgbuild_1.3.1       attempt_0.3.1        systemfonts_1.0.4   
## [64] rlang_1.0.1          pkgconfig_2.0.3      evaluate_0.15       
## [67] lattice_0.20-45      patchwork_1.1.1      labeling_0.4.2      
## [70] processx_3.5.2       tidyselect_1.1.2     magrittr_2.0.2      
## [73] R6_2.5.1             generics_0.1.2       DBI_1.1.2           
## [76] pillar_1.7.0         haven_2.4.3          withr_2.4.3         
## [79] mgcv_1.8-39          datawizard_0.2.3     modelr_0.1.8        
## [82] crayon_1.5.0         shinyWidgets_0.6.4   utf8_1.2.2          
## [85] tzdb_0.2.0           rmarkdown_2.11       usethis_2.1.5       
## [88] grid_4.1.2           readxl_1.3.1         callr_3.7.0         
## [91] reprex_2.0.1         digest_0.6.29        xtable_1.8-4        
## [94] httpuv_1.6.5         textshaping_0.3.6    munsell_0.5.0       
## [97] dockerfiler_0.1.4    bslib_0.3.1